﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Content;
using Chromos.ActionEngine;
using Chromos.AIEngine;

namespace Chromos.Actors
{
	class RockMan : Enemy
    {
        const int moveSpeed = 80;

        public RockMan(Game1 game, Vector2 position, Vector2 velocity, ContentManager content, bool isStatic, string aggressiveness)
			: base(game, position, velocity, content, isStatic,  aggressiveness)
		{
			this.applyGravity = true;
		}

        protected override void initAIEngine()
		{
			aiEngine = new ActorAIEngine(this, "normal", 300);
		}

		protected override void initActorFields()
		{
			base.initActorFields();
			this.health = 150;
		}

		public override Projectile createProjectiles(int i)
		{
			return null;
		}

		public override void addActions()
		{
            // Create and add the various actions for this actor's idling, movement, attack, and defense.
            // NOTE: Uses VisualLoopingAction until VisualNonLoopingAction is made non-abstract.

            // RockMan Idle (nonLooping)
			IdleAction standing = new IdleAction(this, content, Vector2.Zero, ForceType.ForceInstant, 0);
            standing.addImageToLoad(@"Sprites/Enemies/RedUnits/RockMan/Move/RockManStanding");

			// Add everything to the correct action list
			actionEngine.addIdle(standing);
		}
    }
}
